home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 November: Tool Chest / Dev.CD Nov 00 TC Disk 1.toast / Sample Code / Devices and Hardware / Drivers / TradDriverLoaderLib / TradDriverLoaderLib.p < prev   
Encoding:
Text File  |  2000-09-28  |  2.9 KB  |  82 lines  |  [TEXT/CWIE]

  1. unit TradDriverLoaderLib;
  2. (*
  3.     File:        TradDriverLoaderLib.p
  4.     
  5.     Description:Pascal interface for the pseudo-DriverLoaderLib for 'DRVR's.
  6.  
  7.     Author:        Quinn "The Eskimo!"
  8.  
  9.     Copyright:     Copyright: © 1996-1999 by Apple Computer, Inc.
  10.                 all rights reserved.
  11.     
  12.     Disclaimer:    You may incorporate this sample code into your applications without
  13.                 restriction, though the sample code has been provided "AS IS" and the
  14.                 responsibility for its operation is 100% yours.  However, what you are
  15.                 not permitted to do is to redistribute the source as "DSC Sample Code"
  16.                 after having made changes. If you're going to re-distribute the source,
  17.                 we require that you make it clear in the source that the code was
  18.                 descended from Apple Sample Code, but that you've made changes.
  19.     
  20.     Change History (most recent first):
  21.                 6/23/99    Updated for Metrowerks Codewarrior Pro 2.1(KG)
  22.  
  23. *)
  24.  
  25. interface
  26.  
  27.     uses
  28.         Types,
  29.         Devices;
  30.  
  31.     (* The following types are not in the "Devices.p".  I need them 
  32.         because TradGetDriverInformation uses pointers instead
  33.         of var parameters to make it easy to pass nil to
  34.         the parameters you're not interested in.
  35.     *)
  36.  
  37.     type
  38.         DriverFlagsPtr = ^DriverFlags;
  39.         UnitNumberPtr = ^UnitNumber;
  40.         DriverRefNumPtr = ^DriverRefNum;
  41.         DRVRHeaderPtrPtr = ^DRVRHeaderPtr;
  42.     
  43.     (* See "TradDriverLoaderLib.h" for comments.  I couldn't be bothered
  44.         replicating them in both files.
  45.     *)
  46.  
  47.     function TradHigherDriverVersion(var driverVersion1 : NumVersion;
  48.                                         var driverVersion2 : NumVersion) : Boolean;
  49.     function TradHighestUnitNumber : UnitNumber;
  50.     function TradDriverGestaltOn(refNum : DriverRefNum) : OSErr;
  51.     function TradDriverGestaltOff(refNum : DriverRefNum) : OSErr;
  52.     function TradDriverGestaltIsOn(flags : DriverFlags) : Boolean;
  53.     function TradLookupDrivers(beginningUnit : UnitNumber;
  54.                                 endingUnit : UnitNumber;
  55.                                 emptyUnits : Boolean;
  56.                                 var returnedRefNums : ItemCount; 
  57.                                 refNums : DriverRefNumPtr) : OSErr;
  58.     function TradInstallDriverFromPtr(driver : DRVRHeaderPtr;
  59.                                         beginningUnit : UnitNumber;
  60.                                         endingUnit : UnitNumber;
  61.                                         var refNum : DriverRefNum) : OSErr;
  62.     function TradInstallDriverFromHandle(driver : DRVRHeaderHandle;
  63.                                             beginningUnit : UnitNumber;
  64.                                             endingUnit : UnitNumber;
  65.                                             var refNum : DriverRefNum) : OSErr;
  66.     function TradInstallDriverFromResource(rsrcID : SInt16; rsrcName : StringPtr;
  67.                                             beginningUnit : UnitNumber;
  68.                                             endingUnit : UnitNumber;
  69.                                             var refNum : DriverRefNum) : OSErr;
  70.     function TradGetDriverInformation(refNum : DriverRefNum;
  71.                                         thisUnit : UnitNumberPtr;
  72.                                         flags : DriverFlagsPtr;
  73.                                         name : StringPtr;
  74.                                         driverHeader : DRVRHeaderPtrPtr
  75.                                         ) : OSErr;
  76.     function TradOpenInstalledDriver(refNum : DriverRefNum; ioPermission : SInt8) : OSErr;
  77.     function TradRemoveDriver(refNum : DriverRefNum; immediate : Boolean) : OSErr;
  78.     function TradRenameDriver(refNum : DriverRefNum; newDriverName : Str255) : OSErr;
  79.  
  80. end. (* TradDriverLoaderLib *)
  81.  
  82.